Sad Music?! (61)

Earlier research showed that minor, slowness and low pitch in music gives us a sad feeling.

Results AOC

Results AOC


Introduction

For this project I want to use the findings out of an earlier Musicology project. In my research on what makes music ‘sad’ I found that the minor aspect is the thing what makes music sad. Besides that aspect, also slowness and low pitch are important for giving a listener a sad feeling. My big goal for this portfolio project is to make a widget that measures how sad someone’s playlist is by comparing these factors in a 3:2:1 ratio. This is based on the results, as you can see in the graph. With these outcomes I want to make a day by day scheme for how ‘sad’ your day was according to the songs you listened that day. A calendar that shows your mood based on the music you listen ;). For now this is a too big goal, for this project my research question is

’What is the mood of my own music, compared to most listenend pophits?

So my first step is to compare the major/minor- ratio and the mean tempo of my own playlist ‘Most listened 2018’ to ‘Top 50 Nederland’ playlist. I have not found a way yet to measure the pitch of the songs in the playlists, so for now I use the ‘loudness’ as extra indicator.

First Results

So far it seems that my own playlist is less sad than the Top 50 Nederland. Minor is 31% against 40% in Top 50 Nederland. My mean tempo is 120 BPM (sd= 31.7) against 116 BPM (sd= 24,0) For loudness the outcome for my most listened 2018 has a mean of -8,06 ; sd= 3,55. For Top50NL it has a mean of -6,64 with sd= 2,84.

Formula

I can make a formule to calculate the sadness (because of the different in numbers this formulate is not really accurate, but it is a sketch for futher steps).

Sadness= 3mode -2(tempo/1000) -loudness/10.

Sadness(Top50NL)= 3x0,40 - 2x0,116 + 0,664 = 1.632

Sadness(My2018)= 3x0,31 - 2x0,120 + 0,806 = 1.976

Goals

My goal is to create a formule that which takes these aspects in a 3:2:1 ratio and is based on a 1 to 100 scale.

Imported to keep in mind for the next weeks is that aspects as tempo and loudness are not well measured for songs with long silent intros, like You- The 1975. Those kind of songs are better left behind. While googling for these statistics I found out that Spotify has a correctness chance, this is something to use in the next weeks.

I would also prefer to use Last.fm for my statistics, because I spend a big amount of my music listening on YouTube.

‘You listen to such depressing music!’ (72)

My own playlist (6,000 songs) comparement with a playlist of hits in all popgenres (10,000).

This is a JPEG image due of the large amount of data

This is a JPEG image due of the large amount of data


Comparement and variables

First of all, I decided to change the playlist I’m comparing. I have a playlist where I put in all the music I listen to. This playlist consist of almost 6,000 songs. I compare this playlist with a playlist that consists of 10.000, based on the most famous songs per genre. Good to notice is that this playlist is almost twice as big as my own playlist (10K versus 6K) It is hard to decide what kind of playlist is best fitting for my project. Because I’m comparing my own music to ‘normal’ music, I should have a playlist that consist of songs that are most listened, and known by the greatest amount of people.

Dr. Burgoyne told us in the last lecture that Energy and Valence are mostly used in music cognition for measuring emotion is music. This made me change my way of doing it in the research, so for now on I’ll use energy, valence, mode, loudness and tempo as variables.The example visualisation dr. Burgoyne made for our lecture was luckily for me fitting for my portfolio!

Based on what Dr. Burgoyne told in the lecture, for this research I will use: mode, tempo, loudness, energy and valence. Luckily for me, dr. Burgoyne already made a really good visualisation using these factors, so the only thing I had to do was chancing the visualisation to my own playlists. Besides I changed the way minor/minor was visualised in colors and added tempo to the alpha factor.

Conclusion

While the 10K playlist makes a clear line from the left bottum corner to the right top corner, my playlist really clusters at the left. There is a cluster at the left bottum corner, which would mean that my music is partly ‘sad’. There’s also a cluster at the middle of the buttom of this graph, what would be an ‘anger’ cluster.

‘Go down, soft sound’ - Same song, different style, pitch? (83)

The differences between the three versions of ‘The 1975’ by the band The 1975.


Case Study: The 1975

One thing is clear, my all time favorite artist is the British band The 1975. To go a bit deeper into the music I listen to, I take my favourite band as a case study for the next analyse technique. I can give a whole TedTalk why this is the best band ever, but I will give you one reason in this project. Every album, they start off with the same song, ‘The 1975’. Same lyrics, but different in style. As a prelude, the band introduces the style of the album with this song. But how much do these versions actually differ? Time to use the track analysis.

Conclusion As you can see there’s a little difference in the pitches that are used in the three songs. Clear to see that the most recent version has repeated sequences. The second one has longer sequences, what is more used in an electronic style. And the fist one, has the most build up sequence.

‘You’re intertwining your soul with somebody else’- Comparement between versions (83)

Self-similarity of the normal and alt version of ‘Somebody Else’ by the band ‘The 1975’.


Alt versus normal version - Long distance comparement My most listened song of The 1975 is ‘Somebody Else’. This song has two versions, a normal and an ‘Alt’ version. In my opinion, the versions do not differ so much, by ear. Let’s use this analysis to see whether I am right or not!

Conclusion Somebody Else seems only to differ in the bridge part of the song, but in the rest of the song, the song is mostly the same.

The ‘Colorness’ of PopMusic - Timbre and Chroma (94)


Style differences

Another key charastic of The 1975 is their use of different styles between songs. My favourite song, ‘Robbers’ is quite a pop song. Their most famous song, ‘Chocolate’ is one of the most ‘wannabe boyband popsong of the ’10’s’ you could think of. However ‘Please Be Naked’ is a completely instrumental, in a piano/electronic way.

Conclusion

As you can see out of the plots, the most colorfull one in all 12 sections is the instrumental ‘Please Be Naked’. ‘Chocolate’ is almost completely blue and ‘Robbers’ has a little yellow, meaning that the more ‘poppy’ a song is, the less color in the timbre sections has.

The Segmentation of PopMusic (105)


Style differences

Using the same three songs of previous plot, you can also see that the popsongs have a clear bridge convention. This means that the song is verse-chorus-verse-BRIDGE-chorus. The ‘Please Be Naked’ song, however, has a clear segmentations in it, which means that there are way more sections within the song.There is even no verse, chorus or bridge. There is a repeated segment at the end, and that is it.

Tonal Analysis

***

In the comparement of tonal analysis you can see that they are mostly the same. All blue graphs. ### Low level features (116)

*** These low level features show once again that my own playlist is quite different from the pop playlist.


Once again, these low level features show that my playlist is quite different from the popplaylist.

Classification (127)

             Truth
Prediction    Happy Tunes Mar19 Sad Songs
  Happy Tunes          17     8         1
  Mar19                 1     5         3
  Sad Songs             2     7        16

# A tibble: 3 x 3
  .metric  .estimator .estimate
  <chr>    <chr>          <dbl>
1 accuracy multiclass     0.633
2 kap      multiclass     0.450
3 j_index  macro          0.45 
# A tibble: 3 x 3
  .metric  .estimator .estimate
  <chr>    <chr>          <dbl>
1 accuracy multiclass     0.633
2 kap      multiclass     0.450
3 j_index  macro          0.45 
$`Happy Tunes`
35 x 1 sparse Matrix of class "dgCMatrix"
                          s0
                 -0.01883133
danceability      0.39622200
energy            .         
loudness          .         
speechiness       .         
acousticness     -0.10285760
instrumentalness  .         
liveness          .         
valence           0.19609347
tempo             .         
duration_ms       .         
C                 .         
`C#|Db`           0.03673993
D                 .         
`D#|Eb`           .         
E                 .         
F                 .         
`F#|Gb`           .         
G                 .         
`G#|Ab`           .         
A                 .         
`A#|Bb`           .         
B                 .         
c01               .         
c02               .         
c03               .         
c04               .         
c05               .         
c06               .         
c07               .         
c08               .         
c09               .         
c10               .         
c11               .         
c12               .         

$Mar19
35 x 1 sparse Matrix of class "dgCMatrix"
                          s0
                  0.12938298
danceability      .         
energy            .         
loudness          .         
speechiness       .         
acousticness      .         
instrumentalness  0.37483258
liveness          .         
valence           .         
tempo             .         
duration_ms       .         
C                -0.09678894
`C#|Db`           .         
D                 .         
`D#|Eb`           .         
E                 .         
F                 .         
`F#|Gb`           .         
G                 .         
`G#|Ab`           .         
A                 .         
`A#|Bb`           0.09909007
B                 .         
c01               .         
c02               .         
c03               0.06880478
c04               .         
c05               .         
c06               .         
c07               .         
c08               .         
c09               .         
c10               .         
c11               0.01759180
c12               .         

$`Sad Songs`
35 x 1 sparse Matrix of class "dgCMatrix"
                          s0
                 -0.11055164
danceability      .         
energy           -0.58149187
loudness          .         
speechiness       .         
acousticness      0.09640198
instrumentalness  .         
liveness          .         
valence           .         
tempo             .         
duration_ms       .         
C                 .         
`C#|Db`           .         
D                 .         
`D#|Eb`           .         
E                 .         
F                 .         
`F#|Gb`           .         
G                 .         
`G#|Ab`           .         
A                 .         
`A#|Bb`           .         
B                 .         
c01               .         
c02               .         
c03               .         
c04              -0.18909552
c05               0.12120796
c06               .         
c07               .         
c08               .         
c09               .         
c10              -0.16910405
c11               .         
c12               .         
# A tibble: 3 x 3
  .metric  .estimator .estimate
  <chr>    <chr>          <dbl>
1 accuracy multiclass     0.583
2 kap      multiclass     0.375
3 j_index  macro          0.375

Call:
C5.0.default(x = x, y = y, trials = 1, control =
 C50::C5.0Control(minCases = 2, sample = 0))


C5.0 [Release 2.07 GPL Edition]     Fri Mar 22 16:02:31 2019
-------------------------------

Class specified by attribute `outcome'

Read 60 cases (35 attributes) from undefined.data

Decision tree:

c02 > 0.3022048:
:...danceability <= -0.1379389: Mar19 (6)
:   danceability > -0.1379389:
:   :...c08 <= 0.8168036: Happy Tunes (18/1)
:       c08 > 0.8168036: Mar19 (3)
c02 <= 0.3022048:
:...danceability > 0.5705152:
    :...c08 <= 1.031591: Happy Tunes (3)
    :   c08 > 1.031591: Mar19 (2)
    danceability <= 0.5705152:
    :...liveness > -0.07266768: Mar19 (3)
        liveness <= -0.07266768:
        :...C <= -1.405893: Mar19 (2)
            C > -1.405893:
            :...instrumentalness <= -0.3317828: Sad Songs (19)
                instrumentalness > -0.3317828: Mar19 (4/1)


Evaluation on training data (60 cases):

        Decision Tree   
      ----------------  
      Size      Errors  

         9    2( 3.3%)   <<


       (a)   (b)   (c)    <-classified as
      ----  ----  ----
        20                (a): class Happy Tunes
         1    19          (b): class Mar19
               1    19    (c): class Sad Songs


    Attribute usage:

    100.00% danceability
    100.00% c02
     46.67% liveness
     43.33% c08
     41.67% C
     38.33% instrumentalness


Time: 0.0 secs
# A tibble: 3 x 3
  .metric  .estimator .estimate
  <chr>    <chr>          <dbl>
1 accuracy multiclass     0.717
2 kap      multiclass     0.575
3 j_index  macro          0.575

# A tibble: 3 x 3
  .metric  .estimator .estimate
  <chr>    <chr>          <dbl>
1 accuracy multiclass     0.583
2 kap      multiclass     0.375
3 j_index  macro          0.375


Heartbeat The song Please Be Naked is charastic for the use of a heartbeat is prominent beat. The closer to the end of the song, the louder the heartbeat is.

Clustering

K-means clustering with 2 clusters of sizes 49, 74

Cluster means:
  danceability     energy   loudness speechiness acousticness
1   -0.4493567 -1.0091057 -0.7638173  -0.2988023     1.055163
2    0.2975470  0.6681916  0.5057709   0.1978556    -0.698689
  instrumentalness   liveness   valence      tempo duration_ms          C
1       0.03435315 -0.2396911 -0.658002 -0.1572882  0.10384111  0.5717892
2      -0.02274736  0.1587144  0.435704  0.1041503 -0.06875965 -0.3786171
       C#|Db          D      D#|Eb          E          F      F#|Gb
1 -0.2969300  0.3692312 -0.1548718  0.3199536  0.1992353 -0.4814657
2  0.1966158 -0.2444909  0.1025503 -0.2118612 -0.1319261  0.3188084
           G      G#|Ab           A      A#|Bb           B        c01
1  0.5849595 -0.4157955  0.11856961 -0.4657934 -0.09893415 -0.8496090
2 -0.3873381  0.2753240 -0.07851231  0.3084308  0.06551045  0.5625789
         c02        c03        c04        c05        c06        c07
1 -0.8957742 -0.2503521 -0.6076917  0.6488884  0.4341056 -0.4815712
2  0.5931478  0.1657737  0.4023905 -0.4296693 -0.2874483  0.3188782
          c08         c09        c10          c11        c12
1  0.02970051  0.12913594 -0.8177227 -0.008008478  0.4140531
2 -0.01966655 -0.08550893  0.5414651  0.005302911 -0.2741703

Clustering vector:
               Tough                Grace    Someone You Loved 
                   2                    2                    1 
Something Borrowe... It's Not Living (...     Grow Old with Me 
                   2                    2                    1 
Quarter Past Midn...              Riptide    Future Looks Good 
                   2                    2                    2 
TOOTIMETOOTIMETOO...          I Will Wait         Killer Queen 
                   2                    2                    2 
           Bee-Sting              t-shirt    Dog Days Are Over 
                   2                    2                    2 
        Little Talks         Sunday Smile                 1950 
                   2                    2                    2 
 A Sky Full of Stars         Losing Touch                 Grip 
                   2                    2                    2 
   If You're Over Me   Castle on the Hill             Budapest 
                   2                    2                    2 
Rewrite The Stars...          Superheroes Walk Alone (feat.... 
                   2                    2                    2 
Here Comes The Su...      Please Don't Go          Beach House 
                   2                    2                    2 
        Viva La Vida Lost In Japan - R...        Perfect To Me 
                   2                    2                    2 
           Love Song      Go Your Own Way       September Song 
                   2                    2                    2 
            Polaroid            Conqueror No One Compares T... 
                   2                    2                    2 
             Wake Up     I Believe in You     Dancing On Glass 
                   2                    2                    2 
            Cassy O'          Sex on Fire            Fireflies 
                   2                    2                    2 
         Lisztomania          Gut Feeling            I'm Yours 
                   2                    2                    2 
           Happy Now            Body Heat                Paris 
                   2                    2                    2 
Just a Little Longer  Best Day Of My Life   Don't Kill My Vibe 
                   2                    2                    2 
           Big Plans Close To Me (with... This Feeling (fea... 
                   2                    2                    2 
     Anti-Everything       Come On Eileen        Party For One 
                   2                    2                    2 
 On Top Of The World      Can You Feel It       Suddenly I See 
                   2                    2                    2 
Nothing but a Hea...     Lost Without You  Supermarket Flowers 
                   2                    1                    1 
       Say Something      To Build A Home Dancing With A St... 
                   1                    1                    1 
    Not About Angels     Leave a Light On No Right To Love ... 
                   1                    2                    1 
          Breathe Me           Be Alright I Miss You (feat.... 
                   2                    1                    1 
Love Me Back - Ac...                Sober Like Everybody El... 
                   1                    1                    1 
          In My Head The Love You Left...              Happier 
                   1                    1                    1 
I'll Never Love A... Tell Me That You ...             Homesick 
                   1                    1                    1 
   Better Than Today Is It Really Me Y...          Empty Space 
                   1                    1                    2 
      Enough for You               Hounds You're Gonna Brea... 
                   1                    1                    1 
  Hand That You Hold  Waiting Room - Demo         Miracle Love 
                   1                    1                    2 
     Maybe It Was Me         Disconnected           Like I Did 
                   1                    1                    2 
             Darling         Whole - demo Hell or High Wate... 
                   1                    1                    1 
      I'm Still Here               Better            Superhero 
                   2                    1                    1 
     Cigarette Break         Boy Loves Me Is She Gonna Be T... 
                   2                    1                    1 
           This Fire  T-Shirts - Acoustic Again - Acoustic ... 
                   1                    1                    1 
        The Worrying             The Bird Half As Good As Y... 
                   2                    1                    1 
   Punches (with LP) Secretly Hoping Y...      Girl - Acoustic 
                   1                    1                    1 
           Faking It  Why Am I Like This?        Stranded Love 
                   2                    1                    2 
Sometimes <U+25D0> - Liv... I Still Love You ... Sinead - Lessons ... 
                   1                    1                    2 
 If I'm Being Honest   They Own This Town            Rupi Kaur 
                   1                    2                    1 

Within cluster sum of squares by cluster:
[1] 1491.426 1932.198
 (between_SS / total_SS =  17.5 %)

Available components:

[1] "cluster"      "centers"      "totss"        "withinss"    
[5] "tot.withinss" "betweenss"    "size"         "iter"        
[9] "ifault"      
[1] 432.0 345.6

Credits

Student Made by Marielle Baelemans, 2019. For info: marielle.baelemans@student.uva.nl.

University This portfolio is part of the Computational Musicology course, given by the Musicology department of the University of Amsterdam.